---
sidebar_position: 3
---

# Високорівневі концепції

`Ця документація була автоматично перекладена і може містити помилки. Не соромтеся відкривати Pull Request, щоб запропонувати зміни.`

LlamaIndex.TS допомагає вам створювати додатки, що працюють на основі LLM (наприклад, системи питань та відповідей, чат-боти) з власними даними.

У цьому посібнику з високорівневих концепцій ви дізнаєтеся:

- як LLM може відповідати на питання за допомогою ваших власних даних.
- ключові концепції та модулі в LlamaIndex.TS для створення власного запитового конвеєра.

## Відповіді на питання за допомогою ваших даних

LlamaIndex використовує двоетапний метод при використанні LLM з вашими даними:

1. **етап індексування**: підготовка бази знань, та
2. **етап запитування**: отримання відповідного контексту знань для допомоги LLM у відповіді на питання

![](./_static/concepts/rag.jpg)

Цей процес також відомий як Retrieval Augmented Generation (RAG).

LlamaIndex.TS надає необхідний набір інструментів для зроблення обох етапів надзвичайно простими.

Давайте детальніше розглянемо кожен етап.

### Етап індексації

LlamaIndex.TS допомагає вам підготувати базу знань за допомогою набору з'єднувачів даних та індексів.

![](./_static/concepts/indexing.jpg)

[**Завантажувачі даних**](./modules/high_level/data_loader.md):
З'єднувач даних (тобто `Reader`) впроваджує дані з різних джерел даних та форматів у просте представлення `Document` (текст та прості метадані).

[**Документи / Вузли**](./modules/high_level/documents_and_nodes.md): `Document` є загальним контейнером для будь-якого джерела даних - наприклад, PDF, виводу API або отриманих даних з бази даних. `Node` є атомарною одиницею даних в LlamaIndex і представляє "частину" вихідного `Document`. Це багатогранне представлення, яке включає метадані та відносини (до інших вузлів), що дозволяють здійснювати точні та виразні операції відновлення.

[**Індекси даних**](./modules/high_level/data_index.md):
Після впровадження даних LlamaIndex допомагає вам індексувати дані у формат, який легко отримати.

Під капотом LlamaIndex розбирає вихідні документи на проміжні представлення, обчислює векторні вкладення та зберігає ваші дані у пам'яті або на диску.

"

### Етап запитування

На етапі запитування конвеєр запитів отримує найбільш відповідний контекст на основі запиту користувача,
та передає його LLM (разом з запитом) для синтезування відповіді.

Це надає LLM актуальні знання, яких немає у його початкових навчальних даних,
(а також зменшує галюцинації).

Основним викликом на етапі запитування є отримання, організація та міркування над (можливо, багатьма) базами знань.

LlamaIndex надає модулі, які можна комбінувати, щоб допомогти вам будувати та інтегрувати конвеєри RAG для систем питань та відповідей (двигун запитів), чат-ботів (чат-двигун) або як частину агента.

Ці будівельні блоки можуть бути налаштовані для відображення вподобань ранжування, а також комбіновані для міркування над кількома базами знань у структурований спосіб.

![](./_static/concepts/querying.jpg)

#### Будівельні блоки

[**Витягувачі**](./modules/low_level/retriever.md):
Витягувач визначає, як ефективно отримати відповідний контекст з бази знань (тобто індексу), коли заданий запит.
Конкретна логіка витягування відрізняється для різних індексів, найпопулярнішим з яких є щільне витягування з векторним індексом.

[**Синтезатори відповідей**](./modules/low_level/response_synthesizer.md):
Синтезатор відповідей генерує відповідь від LLM, використовуючи запит користувача та заданий набір витягнутих фрагментів тексту.

"

#### Конвеєри

[**Запитові двигуни**](./modules/high_level/query_engine.md):
Запитовий двигун - це повний конвеєр, який дозволяє вам задавати питання щодо ваших даних.
Він приймає запит на природній мові та повертає відповідь, разом з отриманим контекстом, який передається LLM.

[**Чат-двигуни**](./modules/high_level/chat_engine.md):
Чат-двигун - це повний конвеєр для проведення розмови з вашими даними
(багатооборотний діалог замість одного питання та відповіді).

"
